﻿using Factory.MasterData.WorkStations.Dto;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Dynamic.Core;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Services;

namespace Factory.MasterData.WorkStations
{
    /// <summary>
    /// 工作站接口
    /// </summary>
    public interface IWorkStationAppService : IApplicationService
    {
        /// <summary>
        /// 获取工作站（分页）
        /// </summary>
        /// <param name="workStationName">工作站名称</param>
        /// <param name="isNo">是否删除</param>
        /// <param name="pageIndex">页码</param>
        /// <param name="pageSize">页容量</param>
        /// <returns></returns>
        Task<PagedResult> GetWorkStationShow(string? workStationName, int isNo, int page, int limit);

        /// <summary>
        /// 获取车间的数据
        /// </summary>
        /// <returns></returns>
        List<WorkshopSetupsListDto> WorkshopSetupsList();

        /// <summary>
        /// 新增工作站
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<int> AddWorkStation(WorkStation workstation);

        /// <summary>
        /// 获取车间具体数据
        /// </summary>
        /// <returns></returns>
        Task<WorkStation> SpecificData(int id);

        /// <summary>
        /// 删除工作站
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> DeleteWorkStation(int id);

        /// <summary>
        /// 修改工作站
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<int> UpdateWorkStation(WorkStationInputAddDto addDto);

      
    }

}

        
